1. Field of the Invention
This invention relates to information processing. In particular, the invention relates to network address translation.
2. Description of Related Art
The need for a Network Address translation arises when a network's internal addresses cannot be used outside the network either for privacy reasons or because they are invalid for use outside the network. Basic Address translation would allow hosts in a private network to transparently access the external, or public, network and enable access to selective local hosts from the outside. Organizations with a network setup predominantly for internal use, with a need for occasional external access are good candidates for this scheme. Many Small Office, Home Office (SOHO) users and telecommuting employees have multiple Network nodes in their office, running applications, but have a single Internet Protocol (IP) address assigned to their remote access router by their service provider to access remote networks.
Messages are typically transmitted over the network domain in packets. Packets contain information other than the actual data in the messages. To describe the information and the data in an organized manner, it is useful to have a formal method of abstraction of the packet contents. One such method is the Abstract Syntax Notation One (ASN.1).
ASN.1 is a formal notation used for describing data transmitted by telecommunications protocols, regardless of language implementation and physical representation of these data, whatever the application, whether complex or very simple.
One of the main reasons for the success of ASN.1 is that this notation is associated with several standardized encoding rules such as the Basic Encoding Rules (BER), or more recently the Packed Encoding Rules (PER), which prove useful for applications that undergo restrictions in terms of bandwidth. These encoding rules describe how the values defined in ASN.1 can be translated into the bytes ‘over the wire’ and reverse.
Existing techniques to perform address translation include exhaustively traversing all possible contents for a given data packet to locate addresses and ports. This approach is time consuming and wastes processing resources.
Therefore, there is a need in the technology to provide a technique for network address translation.